import { useState } from "react";
import Child from "./Child";

export default function App() {
  const [person, setPerson] = useState({
    name: "jack",
    age: 18,
    sex: 1,
    aaa: 2,
    bbb: 3,
  });

  // 父组件定义更新数据的方法
  const updateAge = () => {
    // 更新数据方法：是对数据整个更新（替换）
    // setPerson({
    //   name: person.name,
    //   sex: person.sex,
    //   aaa: person.aaa,
    //   bbb: person.bbb,
    //   age: person.age + 1,
    // });

    setPerson({
      ...person,
      age: person.age + 1, // 对象同名数据会覆盖，后面覆盖前面的
    });
  };

  return (
    <div>
      <h1>App...</h1>
      {/* 将更新数据的方法传递给子组件 */}
      <Child {...person} updateAge={updateAge} />
    </div>
  );
}
